package com.atguigu.gmall.weball.controller;

import com.atguigu.gmall.common.result.Result;
import com.atguigu.gmall.feign.order.OrderFeignClient;
import com.atguigu.gmall.order.entity.OrderInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * @author lfy
 * @Description
 * @create 2023-08-02 15:52
 */
@Controller
@Slf4j
public class PayController {

    @Autowired
    OrderFeignClient orderFeignClient;

    @GetMapping("/pay.html")
    public String pay(@RequestParam("orderId") Long orderId,
                      Model model){
        //远程调用获取 orderId 对应的订单的 数据（id，总金额）
        Result<OrderInfo> info = orderFeignClient.getOrderInfoById(orderId);
        // user_id，id
        model.addAttribute("orderInfo",info.getData());
        return "payment/pay";
    }

    @GetMapping("/paysuccess.html")
    public String paySuccess(String out_trade_no){

        //支付成功了？
        log.info("跳到成功页了....");
        //千万不要在这里远程调用订单改状态，
        //1、不安全：完全安全，需要把所有参数都获取来，用支付宝验签
        //2、支付成关闭浏览器：浏览器直接不会访问这个地址，这个方法都不会被触发，永远改不掉订单状态了
        return "payment/success";
    }
}
